<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="logging_v2.html">Cloud Logging API</a> . <a href="logging_v2.billingAccounts.html">billingAccounts</a> . <a href="logging_v2.billingAccounts.locations.html">locations</a> . <a href="logging_v2.billingAccounts.locations.buckets.html">buckets</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="logging_v2.billingAccounts.locations.buckets.links.html">links()</a></code>
</p>
<p class="firstline">Returns the links Resource.</p>

<p class="toc_element">
  <code><a href="logging_v2.billingAccounts.locations.buckets.views.html">views()</a></code>
</p>
<p class="firstline">Returns the views Resource.</p>

<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, bucketId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a log bucket that can be used to store log entries. After a bucket has been created, the bucket's location cannot be changed.</p>
<p class="toc_element">
  <code><a href="#createAsync">createAsync(parent, body=None, bucketId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a log bucket asynchronously that can be used to store log entries.After a bucket has been created, the bucket's location cannot be changed.</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes a log bucket.Changes the bucket's lifecycle_state to the DELETE_REQUESTED state. After 7 days, the bucket will be purged and all log entries in the bucket will be permanently deleted.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets a log bucket.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists log buckets.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates a log bucket.If the bucket has a lifecycle_state of DELETE_REQUESTED, then FAILED_PRECONDITION will be returned.After a bucket has been created, the bucket's location cannot be changed.</p>
<p class="toc_element">
  <code><a href="#undelete">undelete(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Undeletes a log bucket. A bucket that has been deleted can be undeleted within the grace period of 7 days.</p>
<p class="toc_element">
  <code><a href="#updateAsync">updateAsync(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates a log bucket asynchronously.If the bucket has a lifecycle_state of DELETE_REQUESTED, then FAILED_PRECONDITION will be returned.After a bucket has been created, the bucket's location cannot be changed.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, bucketId=None, x__xgafv=None)</code>
  <pre>Creates a log bucket that can be used to store log entries. After a bucket has been created, the bucket&#x27;s location cannot be changed.

Args:
  parent: string, Required. The resource in which to create the log bucket: &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]&quot; For example:&quot;projects/my-project/locations/global&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}

  bucketId: string, Required. A client-assigned identifier such as &quot;my-bucket&quot;. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. Bucket identifiers must start with an alphanumeric character.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}</pre>
</div>

<div class="method">
    <code class="details" id="createAsync">createAsync(parent, body=None, bucketId=None, x__xgafv=None)</code>
  <pre>Creates a log bucket asynchronously that can be used to store log entries.After a bucket has been created, the bucket&#x27;s location cannot be changed.

Args:
  parent: string, Required. The resource in which to create the log bucket: &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]&quot; For example:&quot;projects/my-project/locations/global&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}

  bucketId: string, Required. A client-assigned identifier such as &quot;my-bucket&quot;. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. Bucket identifiers must start with an alphanumeric character.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
  &quot;error&quot;: { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Deletes a log bucket.Changes the bucket&#x27;s lifecycle_state to the DELETE_REQUESTED state. After 7 days, the bucket will be purged and all log entries in the bucket will be permanently deleted.

Args:
  name: string, Required. The full resource name of the bucket to delete. &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; For example:&quot;projects/my-project/locations/global/buckets/my-bucket&quot; (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Gets a log bucket.

Args:
  name: string, Required. The resource name of the bucket: &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; For example:&quot;projects/my-project/locations/global/buckets/my-bucket&quot; (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>Lists log buckets.

Args:
  parent: string, Required. The parent resource whose buckets are to be listed: &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]&quot; Note: The locations portion of the resource must be specified, but supplying the character - in place of LOCATION_ID will return all buckets. (required)
  pageSize: integer, Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.
  pageToken: string, Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The response from ListBuckets.
  &quot;buckets&quot;: [ # A list of buckets.
    { # Describes a repository in which log entries are stored.
      &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
      &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
        &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
        &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
        &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
        &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
      },
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
      &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
      &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
        { # Configuration for an indexed field.
          &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
          &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
          &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
        },
      ],
      &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
      &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
      &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
      &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
        &quot;A String&quot;,
      ],
      &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
    },
  ],
  &quot;nextPageToken&quot;: &quot;A String&quot;, # If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates a log bucket.If the bucket has a lifecycle_state of DELETE_REQUESTED, then FAILED_PRECONDITION will be returned.After a bucket has been created, the bucket&#x27;s location cannot be changed.

Args:
  name: string, Required. The full resource name of the bucket to update. &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; For example:&quot;projects/my-project/locations/global/buckets/my-bucket&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}

  updateMask: string, Required. Field mask that specifies the fields in bucket that need an update. A bucket field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.For a detailed FieldMask definition, see: https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMaskFor example: updateMask=retention_days
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}</pre>
</div>

<div class="method">
    <code class="details" id="undelete">undelete(name, body=None, x__xgafv=None)</code>
  <pre>Undeletes a log bucket. A bucket that has been deleted can be undeleted within the grace period of 7 days.

Args:
  name: string, Required. The full resource name of the bucket to undelete. &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; For example:&quot;projects/my-project/locations/global/buckets/my-bucket&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # The parameters to UndeleteBucket.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
}</pre>
</div>

<div class="method">
    <code class="details" id="updateAsync">updateAsync(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates a log bucket asynchronously.If the bucket has a lifecycle_state of DELETE_REQUESTED, then FAILED_PRECONDITION will be returned.After a bucket has been created, the bucket&#x27;s location cannot be changed.

Args:
  name: string, Required. The full resource name of the bucket to update. &quot;projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; &quot;folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]&quot; For example:&quot;projects/my-project/locations/global/buckets/my-bucket&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Describes a repository in which log entries are stored.
  &quot;analyticsEnabled&quot;: True or False, # Optional. Whether log analytics is enabled for this bucket.Once enabled, log analytics features cannot be disabled.
  &quot;cmekSettings&quot;: { # Describes the customer-managed encryption key (CMEK) settings associated with a project, folder, organization, billing account, or flexible resource.Note: CMEK for the Log Router can currently only be configured for Google Cloud organizations. Once configured, it applies to all projects and folders in the Google Cloud organization.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information. # Optional. The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed.
    &quot;kmsKeyName&quot;: &quot;A String&quot;, # Optional. The resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key&quot;To enable CMEK for the Log Router, set this field to a valid kms_key_name for which the associated service account has the needed cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name or disabled by setting the key name to an empty string. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
    &quot;kmsKeyVersionName&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersion resource name for the configured Cloud KMS key.KMS key name format: &quot;projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]&quot; For example:&quot;projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1&quot;This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.If this field is populated, the kms_key is tied to a specific CryptoKeyVersion.
    &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the CMEK settings.
    &quot;serviceAccountId&quot;: &quot;A String&quot;, # Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK for Log Router, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account that the Log Router will use to access your Cloud KMS key. Use GetCmekSettings to obtain the service account ID.See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/routing/managed-encryption) for more information.
  },
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of the bucket. This is not set for any of the default buckets.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Describes this bucket.
  &quot;indexConfigs&quot;: [ # Optional. A list of indexed fields and related configuration data.
    { # Configuration for an indexed field.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The timestamp when the index was last modified.This is used to return the timestamp, and will be ignored if supplied during update.
      &quot;fieldPath&quot;: &quot;A String&quot;, # Required. The LogEntry field path to index.Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation( https://cloud.google.com/logging/docs/analyze/custom-index) for details.For example: jsonPayload.request.status
      &quot;type&quot;: &quot;A String&quot;, # Required. The type of data in this index.
    },
  ],
  &quot;lifecycleState&quot;: &quot;A String&quot;, # Output only. The bucket lifecycle state.
  &quot;locked&quot;: True or False, # Optional. Whether the bucket is locked.The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
  &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name of the bucket.For example:projects/my-project/locations/global/buckets/my-bucketFor a list of supported locations, see Supported Regions (https://cloud.google.com/logging/docs/region-support)For the location of global it is unspecified where log entries are actually stored.After a bucket has been created, the location cannot be changed.
  &quot;restrictedFields&quot;: [ # Optional. Log entry field paths that are denied access in this bucket.The following fields and their children are eligible: textPayload, jsonPayload, protoPayload, httpRequest, labels, sourceLocation.Restricting a repeated field will restrict all values. Adding a parent will block all child fields. (e.g. foo.bar will block foo.bar.baz)
    &quot;A String&quot;,
  ],
  &quot;retentionDays&quot;: 42, # Optional. Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of the bucket.
}

  updateMask: string, Required. Field mask that specifies the fields in bucket that need an update. A bucket field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.For a detailed FieldMask definition, see: https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMaskFor example: updateMask=retention_days
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
  &quot;error&quot;: { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

</body></html>